package com.etime.shycourse.services.interfaces;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.etime.shycourse.dto.OrgTeacherDtoS;
import com.etime.shycourse.dto.UserTeacherDto;
import com.etime.shycourse.pojo.SysUser;
import com.etime.shycourse.pojo.Teacher;

import java.util.List;


/**
 * @author wb
 * @since 2021-12-14
 */
public interface OrgTeacherService {

    /**
     * 分页查询机构教师 信息
     * * 1根据用户id 查询到所在机构id
     * * 2再进行查询 sysUser、teacher信息* 根据用户 进行查询 sysUser->根据userName->查询id->teacher信息
     * 教师列表数据
     * 可以 使用用户名进行查找
     *
     * @param orgTeacherDtoS 用户的id 用户名
     * @param pagenum        页码
     * @param pagesize       第几页
     * @return OrgTeacherDto
     * "查询出来的数据有
     * "userid, 用户id
     * "tecid, 教师id
     * "username, 用户名
     * "usertruename, 用户姓名
     * "showpic, 照片
     * "userphone, 联系电话
     * "tectitle, 教师title
     */
    Page<OrgTeacherDtoS> selectOrgTeacherDtoByPage(OrgTeacherDtoS orgTeacherDtoS, Long pagenum, Long pagesize, String token);

    /**
     * 增加用户
     * <p>
     * 1、所有的输入项都必填。用户名需要验证是否重名；
     * 2、先保存用户，然后保存教师信息。
     * <p>
     * 字段有：用户名，密码，姓名，专业，联系电话，Email，照片；用户状态=1；是否教师=1；是否销售人员=0；
     *
     * @param orgTeacherDtoS 用户实体(教师)
     * @return 0失败；1成功
     */
    int insertOrgTeacherDto(OrgTeacherDtoS orgTeacherDtoS, String token);

    /**
     * 每个课程的指定维护教师下拉列表 从本机构中查询本机构所有在职老师，
     * 根据机构id （tecorgid）询本机构所有在职老师
     *
     * @param tecOrgId
     * @return List<UserTeacherDto>
     */
    List<UserTeacherDto> selectListByTecOrgId(Integer tecOrgId);
}
